package com.ctbri.gui;

import javax.swing.*;

import com.ctbri.util.SwingConsole;

import java.awt.*;
import java.awt.event.*;

public class Ex18_MessageBoxes extends JFrame {
  private JButton[] b = {
    new JButton("Alert"), new JButton("Yes/No"),
    new JButton("Color"), new JButton("Input"),
    new JButton("3 Vals")
  };
  private JTextField txt = new JTextField(15);

  public Ex18_MessageBoxes() {
    setLayout(new FlowLayout());
    for(int i = 0; i < b.length; i++) {
      add(b[i]);
    }
    b[0].addActionListener(new ActionListener() {
		@Override
		public void actionPerformed(ActionEvent e) {
			JOptionPane.showMessageDialog(null,
	          "There's a bug on you!", "Hey!",
	          JOptionPane.ERROR_MESSAGE);
		}
	});
    b[1].addActionListener(new ActionListener() {
		
		@Override
		public void actionPerformed(ActionEvent e) {
			 JOptionPane.showConfirmDialog(null,
			          "or no", "choose yes",
			          JOptionPane.YES_NO_OPTION);
		}
	});
    b[2].addActionListener(new ActionListener() {
		
		@Override
		public void actionPerformed(ActionEvent e) {
	        Object[] options = { "Red", "Green" };
	        int sel = JOptionPane.showOptionDialog(
	          null, "Choose a Color!", "Warning",
	          JOptionPane.DEFAULT_OPTION,
	          JOptionPane.WARNING_MESSAGE, null,
	          options, options[0]);
	        if(sel != JOptionPane.CLOSED_OPTION)
	            txt.setText("Color Selected: " + options[sel]);
		}
	});
    b[3].addActionListener(new ActionListener() {
		@Override
		public void actionPerformed(ActionEvent e) {
			 String val = JOptionPane.showInputDialog(
			            "How many fingers do you see?");
			        txt.setText(val);
		}
	});
    b[4].addActionListener(new ActionListener() {
		@Override
		public void actionPerformed(ActionEvent e) {
			Object[] selections = {"First", "Second", "Third"};
	        Object val = JOptionPane.showInputDialog(
	          null, "Choose one", "Input",
	          JOptionPane.INFORMATION_MESSAGE,
	          null, selections, selections[0]);
	        if(val != null)
	          txt.setText(val.toString());
		}
	});
    add(txt);
  }
  public static void main(String[] args) {
    SwingConsole.run(new Ex18_MessageBoxes(), 200, 200);
  }
} ///:~
